const path = require("path");
const CompressionWebpackPlugin = require("compression-webpack-plugin");
const productionGzipExtensions = /\.(js|css|json|txt|html|ico|svg)(\?.*)?$/i;
function resolve(dir) {
  return path.join(__dirname, dir);
}
module.exports = {
  publicPath: "/",
  assetsDir: "static",
  outputDir: "vue3_element_plus_theme_change",
  productionSourceMap: false,
  devServer: {
    port: 3000,
    open: true,
    overlay: {
      warnings: false,
      errors: true,
    },
  },
  chainWebpack(config) {
    config.plugins.delete("prefetch");
  },
  configureWebpack: {
    resolve: {
      alias: {
        "@": resolve("src"),
      },
    },
    plugins: [
      new CompressionWebpackPlugin({
        filename: "[path].gz[query]",
        algorithm: "gzip",
        test: productionGzipExtensions,
        threshold: 10240,
        minRatio: 0.8,
      }),
    ],
  },
};
